package cn.ilikes.tools.nosql.jpa.clients.handers;

import java.util.List;

import org.apache.hadoop.hbase.client.Result;

import cn.ilikes.tools.nosql.jpa.graphs.Node;
import cn.ilikes.tools.nosql.jpa.metadatas.EntityMetaData;

public interface DataHander {

	public void save(Node node) throws JPASQLDataHnaderException;

	public void update(Node node) throws JPASQLDataHnaderException;

	public void remove(Node node) throws JPASQLDataHnaderException;

	public Result find(EntityMetaData entityMetaData, Object key) throws JPASQLDataHnaderException;

	public Result[] seach(EntityMetaData entityMetaData, List keyIds) throws JPASQLDataHnaderException;

	public byte[] findValue(EntityMetaData entityMetaData, Object key, String family, String qualifier) throws JPASQLDataHnaderException;

	public void init();

	public void flush();

	public boolean isOpen();

	public void rollback();

}